{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "ab882c9b",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.functional as F\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b35e1a5c",
   "metadata": {},
   "source": [
    "模拟x^2的函数\n",
    "\n",
    "y=x**2"
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "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"
    }
   },
   "cell_type": "markdown",
   "id": "759900da",
   "metadata": {},
   "source": [
    "![image.png](attachment:image.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "6f97fe00",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 定义目标函数\n",
    "def target_function(x):\n",
    "    return 3 * x ** 2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "4cadeb47",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.8565, 0.6526, 0.0549],\n",
       "        [0.1728, 0.0350, 0.3035],\n",
       "        [0.4210, 0.9133, 0.6424]])"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.rand(3,3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "4f2e5cb2",
   "metadata": {},
   "outputs": [],
   "source": [
    "x_train = torch.linspace(-1, 1, 100)\n",
    "y_train = target_function(x_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "1949be65",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1e2ece64460>"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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1oKCgpBj48aNazCBtTl/E1Fda9x+k03t3bvXbNq0Kbh8ddOmTWbTpk0hy1h79eplXnvtteDPM2bMMO3atTNLly41n3zyiRk9enTYpb39+/c3H374oXnvvfdMz549U7a0t7Hr+OKLL0yvXr3Mhx9+GHLe559/bjwej1mxYkWD3/mnP/3J/OY3vzFbtmwxn3/+ufn1r39t2rRpY5544omE16c+q/XbuXOnefrpp8369evN7t27zdKlS80ll1xirr766uA5gaW9N954o9m8ebNZuXKlueCCC1K6tNdKHf1+vxk0aJDp06eP2blzZ8hywjNnzhhjUvcZLly40Hi9XlNWVma2b99ufvrTn5p27doFVy79+Mc/NlOnTg2WX7dunTnnnHPMM888Yz799FPz5JNPhl3a29T3MZms1nHGjBmmZcuW5o9//GPIZxVog44dO2b+5V/+xZSXl5vdu3ebt956ywwYMMD07Nkz6cFxLPV76qmnzBtvvGF27dplNmzYYG699VbTqlUrs23btmAZO32GVusX8IMf/MCMHTu2wXG7fX7Hjh0L9nOSzHPPPWc2bdpk9u7da4wxZurUqebHP/5xsHxgae/DDz9sPv30UzN79uywS3sbe8/iwfXByIQJE4ykBo933nknWEZ/y8cQUFtba6ZNm2ZycnKM1+s1119/vfnss89Cfu+hQ4fMuHHjzHnnnWeysrLMHXfcERLgJEtT17F79+4G9TXGmJKSEpOfn29qamoa/M4VK1aYfv36mfPOO8+ce+655vLLLzdz584NWzbRrNZv37595uqrrzYdOnQwXq/X9OjRwzz88MMheUaMMWbPnj1mxIgRpnXr1qZjx47moYceClkWm0xW6/jOO++E/ZuWZHbv3m2MSe1n+MILL5iLLrrItGzZ0hQWFpoPPvgg+NzQoUPNhAkTQsq/8sor5nvf+55p2bKlueyyy8zy5ctDno/m+5hsVurYtWvXsJ/Vk08+aYwx5ttvvzU33nijueCCC0yLFi1M165dzd133x3Xht4qK/V74IEHgmVzcnLMyJEjzcaNG0N+n90+Q6t/ozt27DCSzJtvvtngd9nt84vUPgTqNGHCBDN06NAG5/Tr18+0bNnSXHLJJSH9YUBj71k8eIxJ8npNAACAOsgzAgAAUopgBAAApBTBCAAASCmCEQAAkFIEIwAAIKUIRgAAQEoRjAAAgJQiGAEAAClFMAIAAFKKYAQAAKQUwQgAAEgpghEAAJBS/x9EwbOZzJiFOQAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(x_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "a3ceebfc",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c5060938",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 输入\n",
    "x_tran_input = x_train.unsqueeze(1)\n",
    "x_tran_input.requires_grad_(True)\n",
    "x_tran_input.requires_grad\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "8099441b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[3.0000e+00],\n",
       "        [2.8800e+00],\n",
       "        [2.7625e+00],\n",
       "        [2.6474e+00],\n",
       "        [2.5347e+00],\n",
       "        [2.4245e+00],\n",
       "        [2.3168e+00],\n",
       "        [2.2115e+00],\n",
       "        [2.1087e+00],\n",
       "        [2.0083e+00],\n",
       "        [1.9103e+00],\n",
       "        [1.8148e+00],\n",
       "        [1.7218e+00],\n",
       "        [1.6312e+00],\n",
       "        [1.5430e+00],\n",
       "        [1.4573e+00],\n",
       "        [1.3740e+00],\n",
       "        [1.2932e+00],\n",
       "        [1.2149e+00],\n",
       "        [1.1390e+00],\n",
       "        [1.0655e+00],\n",
       "        [9.9449e-01],\n",
       "        [9.2593e-01],\n",
       "        [8.5981e-01],\n",
       "        [7.9614e-01],\n",
       "        [7.3493e-01],\n",
       "        [6.7616e-01],\n",
       "        [6.1983e-01],\n",
       "        [5.6596e-01],\n",
       "        [5.1454e-01],\n",
       "        [4.6556e-01],\n",
       "        [4.1904e-01],\n",
       "        [3.7496e-01],\n",
       "        [3.3333e-01],\n",
       "        [2.9415e-01],\n",
       "        [2.5742e-01],\n",
       "        [2.2314e-01],\n",
       "        [1.9131e-01],\n",
       "        [1.6192e-01],\n",
       "        [1.3499e-01],\n",
       "        [1.1050e-01],\n",
       "        [8.8460e-02],\n",
       "        [6.8870e-02],\n",
       "        [5.1729e-02],\n",
       "        [3.7037e-02],\n",
       "        [2.4793e-02],\n",
       "        [1.4998e-02],\n",
       "        [7.6523e-03],\n",
       "        [2.7548e-03],\n",
       "        [3.0609e-04],\n",
       "        [3.0609e-04],\n",
       "        [2.7548e-03],\n",
       "        [7.6523e-03],\n",
       "        [1.4998e-02],\n",
       "        [2.4793e-02],\n",
       "        [3.7037e-02],\n",
       "        [5.1729e-02],\n",
       "        [6.8870e-02],\n",
       "        [8.8460e-02],\n",
       "        [1.1050e-01],\n",
       "        [1.3499e-01],\n",
       "        [1.6192e-01],\n",
       "        [1.9131e-01],\n",
       "        [2.2314e-01],\n",
       "        [2.5742e-01],\n",
       "        [2.9415e-01],\n",
       "        [3.3333e-01],\n",
       "        [3.7496e-01],\n",
       "        [4.1904e-01],\n",
       "        [4.6556e-01],\n",
       "        [5.1454e-01],\n",
       "        [5.6596e-01],\n",
       "        [6.1983e-01],\n",
       "        [6.7616e-01],\n",
       "        [7.3493e-01],\n",
       "        [7.9614e-01],\n",
       "        [8.5981e-01],\n",
       "        [9.2593e-01],\n",
       "        [9.9449e-01],\n",
       "        [1.0655e+00],\n",
       "        [1.1390e+00],\n",
       "        [1.2149e+00],\n",
       "        [1.2932e+00],\n",
       "        [1.3740e+00],\n",
       "        [1.4573e+00],\n",
       "        [1.5430e+00],\n",
       "        [1.6312e+00],\n",
       "        [1.7218e+00],\n",
       "        [1.8148e+00],\n",
       "        [1.9103e+00],\n",
       "        [2.0083e+00],\n",
       "        [2.1087e+00],\n",
       "        [2.2115e+00],\n",
       "        [2.3168e+00],\n",
       "        [2.4245e+00],\n",
       "        [2.5347e+00],\n",
       "        [2.6474e+00],\n",
       "        [2.7625e+00],\n",
       "        [2.8800e+00],\n",
       "        [3.0000e+00]])"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 输出结果\n",
    "y_train_target = y_train.unsqueeze(1)\n",
    "y_train_target"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "4d4f6e4e",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "16cf9b61",
   "metadata": {},
   "source": [
    "# 模拟 X^2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5dcf9006",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[3.0000e+00],\n",
       "        [2.8800e+00],\n",
       "        [2.7625e+00],\n",
       "        [2.6474e+00],\n",
       "        [2.5347e+00],\n",
       "        [2.4245e+00],\n",
       "        [2.3168e+00],\n",
       "        [2.2115e+00],\n",
       "        [2.1087e+00],\n",
       "        [2.0083e+00],\n",
       "        [1.9103e+00],\n",
       "        [1.8148e+00],\n",
       "        [1.7218e+00],\n",
       "        [1.6312e+00],\n",
       "        [1.5430e+00],\n",
       "        [1.4573e+00],\n",
       "        [1.3740e+00],\n",
       "        [1.2932e+00],\n",
       "        [1.2149e+00],\n",
       "        [1.1390e+00],\n",
       "        [1.0655e+00],\n",
       "        [9.9449e-01],\n",
       "        [9.2593e-01],\n",
       "        [8.5981e-01],\n",
       "        [7.9614e-01],\n",
       "        [7.3493e-01],\n",
       "        [6.7616e-01],\n",
       "        [6.1983e-01],\n",
       "        [5.6596e-01],\n",
       "        [5.1454e-01],\n",
       "        [4.6556e-01],\n",
       "        [4.1904e-01],\n",
       "        [3.7496e-01],\n",
       "        [3.3333e-01],\n",
       "        [2.9415e-01],\n",
       "        [2.5742e-01],\n",
       "        [2.2314e-01],\n",
       "        [1.9131e-01],\n",
       "        [1.6192e-01],\n",
       "        [1.3499e-01],\n",
       "        [1.1050e-01],\n",
       "        [8.8460e-02],\n",
       "        [6.8870e-02],\n",
       "        [5.1729e-02],\n",
       "        [3.7037e-02],\n",
       "        [2.4793e-02],\n",
       "        [1.4998e-02],\n",
       "        [7.6523e-03],\n",
       "        [2.7548e-03],\n",
       "        [3.0609e-04],\n",
       "        [3.0609e-04],\n",
       "        [2.7548e-03],\n",
       "        [7.6523e-03],\n",
       "        [1.4998e-02],\n",
       "        [2.4793e-02],\n",
       "        [3.7037e-02],\n",
       "        [5.1729e-02],\n",
       "        [6.8870e-02],\n",
       "        [8.8460e-02],\n",
       "        [1.1050e-01],\n",
       "        [1.3499e-01],\n",
       "        [1.6192e-01],\n",
       "        [1.9131e-01],\n",
       "        [2.2314e-01],\n",
       "        [2.5742e-01],\n",
       "        [2.9415e-01],\n",
       "        [3.3333e-01],\n",
       "        [3.7496e-01],\n",
       "        [4.1904e-01],\n",
       "        [4.6556e-01],\n",
       "        [5.1454e-01],\n",
       "        [5.6596e-01],\n",
       "        [6.1983e-01],\n",
       "        [6.7616e-01],\n",
       "        [7.3493e-01],\n",
       "        [7.9614e-01],\n",
       "        [8.5981e-01],\n",
       "        [9.2593e-01],\n",
       "        [9.9449e-01],\n",
       "        [1.0655e+00],\n",
       "        [1.1390e+00],\n",
       "        [1.2149e+00],\n",
       "        [1.2932e+00],\n",
       "        [1.3740e+00],\n",
       "        [1.4573e+00],\n",
       "        [1.5430e+00],\n",
       "        [1.6312e+00],\n",
       "        [1.7218e+00],\n",
       "        [1.8148e+00],\n",
       "        [1.9103e+00],\n",
       "        [2.0083e+00],\n",
       "        [2.1087e+00],\n",
       "        [2.2115e+00],\n",
       "        [2.3168e+00],\n",
       "        [2.4245e+00],\n",
       "        [2.5347e+00],\n",
       "        [2.6474e+00],\n",
       "        [2.7625e+00],\n",
       "        [2.8800e+00],\n",
       "        [3.0000e+00]])"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 原始数据\n",
    "x_train = torch.linspace(-1, 1, 100)\n",
    "y_train = target_function(x_train)\n",
    "\n",
    "# 可训练数据\n",
    "x_tran_input = x_train.unsqueeze(1)\n",
    "x_tran_input.requires_grad_(True)\n",
    "x_tran_input.requires_grad\n",
    "\n",
    "y_train_target = y_train.unsqueeze(1)\n",
    "y_train_target"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0ff4721c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1.5296\n",
      "0.1029\n",
      "0.0069\n",
      "0.0017\n",
      "0.0010\n",
      "0.0008\n",
      "0.0007\n",
      "0.0006\n"
     ]
    }
   ],
   "source": [
    "# 构造模型\n",
    "class Model(nn.Module):\n",
    "    def __init__(self, *args, **kwargs):\n",
    "        super().__init__(*args, **kwargs)\n",
    "        self.hidden1 = nn.Linear(in_features=1,out_features=12)\n",
    "        self.fc = nn.Linear(in_features=12,out_features=1)\n",
    "    \n",
    "    def forward(self,input):\n",
    "        # (1000,1)的大小\n",
    "        x = self.hidden1(input)\n",
    "        x = nn.ReLU()(x)\n",
    "        x = self.fc(x)\n",
    "        return x\n",
    "\n",
    "\n",
    "model = Model()\n",
    "\n",
    "\n",
    "opt = torch.optim.Adam(model.parameters(),lr=1e-3)\n",
    "cirtical = nn.MSELoss()\n",
    "epoch = 8000\n",
    "for r in range(epoch):\n",
    "    \n",
    "    opt.zero_grad()\n",
    "    predict = model(x_tran_input)\n",
    "    loss = cirtical(predict,y_train_target)\n",
    "    \n",
    "    loss.backward()\n",
    "    opt.step()\n",
    "    if r%1000==0:\n",
    "        print(\"{:.4f}\".format(loss.item()))\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "9d2418fe",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[ 2.9569e+00],\n",
      "        [ 2.8539e+00],\n",
      "        [ 2.7509e+00],\n",
      "        [ 2.6479e+00],\n",
      "        [ 2.5449e+00],\n",
      "        [ 2.4418e+00],\n",
      "        [ 2.3388e+00],\n",
      "        [ 2.2358e+00],\n",
      "        [ 2.1328e+00],\n",
      "        [ 2.0322e+00],\n",
      "        [ 1.9317e+00],\n",
      "        [ 1.8312e+00],\n",
      "        [ 1.7306e+00],\n",
      "        [ 1.6301e+00],\n",
      "        [ 1.5295e+00],\n",
      "        [ 1.4290e+00],\n",
      "        [ 1.3285e+00],\n",
      "        [ 1.2611e+00],\n",
      "        [ 1.1975e+00],\n",
      "        [ 1.1339e+00],\n",
      "        [ 1.0703e+00],\n",
      "        [ 1.0066e+00],\n",
      "        [ 9.4302e-01],\n",
      "        [ 8.7940e-01],\n",
      "        [ 8.1578e-01],\n",
      "        [ 7.5216e-01],\n",
      "        [ 6.8854e-01],\n",
      "        [ 6.2492e-01],\n",
      "        [ 5.6130e-01],\n",
      "        [ 4.9768e-01],\n",
      "        [ 4.3407e-01],\n",
      "        [ 3.9250e-01],\n",
      "        [ 3.6096e-01],\n",
      "        [ 3.2943e-01],\n",
      "        [ 2.9789e-01],\n",
      "        [ 2.6636e-01],\n",
      "        [ 2.3482e-01],\n",
      "        [ 2.0329e-01],\n",
      "        [ 1.7175e-01],\n",
      "        [ 1.4078e-01],\n",
      "        [ 1.1839e-01],\n",
      "        [ 9.5991e-02],\n",
      "        [ 7.3594e-02],\n",
      "        [ 5.1197e-02],\n",
      "        [ 2.8800e-02],\n",
      "        [ 6.4036e-03],\n",
      "        [-1.9717e-04],\n",
      "        [ 3.3558e-03],\n",
      "        [ 6.9087e-03],\n",
      "        [ 1.0462e-02],\n",
      "        [ 1.4015e-02],\n",
      "        [ 1.7568e-02],\n",
      "        [ 2.1120e-02],\n",
      "        [ 2.4673e-02],\n",
      "        [ 2.8226e-02],\n",
      "        [ 3.1779e-02],\n",
      "        [ 3.5332e-02],\n",
      "        [ 3.8885e-02],\n",
      "        [ 4.7920e-02],\n",
      "        [ 8.5334e-02],\n",
      "        [ 1.2275e-01],\n",
      "        [ 1.6016e-01],\n",
      "        [ 1.9758e-01],\n",
      "        [ 2.3499e-01],\n",
      "        [ 2.7240e-01],\n",
      "        [ 3.0982e-01],\n",
      "        [ 3.4723e-01],\n",
      "        [ 3.8465e-01],\n",
      "        [ 4.2449e-01],\n",
      "        [ 4.7918e-01],\n",
      "        [ 5.3388e-01],\n",
      "        [ 5.8858e-01],\n",
      "        [ 6.4327e-01],\n",
      "        [ 6.9797e-01],\n",
      "        [ 7.5267e-01],\n",
      "        [ 8.0736e-01],\n",
      "        [ 8.6206e-01],\n",
      "        [ 9.1675e-01],\n",
      "        [ 9.7145e-01],\n",
      "        [ 1.0261e+00],\n",
      "        [ 1.0808e+00],\n",
      "        [ 1.1459e+00],\n",
      "        [ 1.2458e+00],\n",
      "        [ 1.3457e+00],\n",
      "        [ 1.4456e+00],\n",
      "        [ 1.5455e+00],\n",
      "        [ 1.6454e+00],\n",
      "        [ 1.7453e+00],\n",
      "        [ 1.8452e+00],\n",
      "        [ 1.9451e+00],\n",
      "        [ 2.0450e+00],\n",
      "        [ 2.1449e+00],\n",
      "        [ 2.2448e+00],\n",
      "        [ 2.3447e+00],\n",
      "        [ 2.4446e+00],\n",
      "        [ 2.5445e+00],\n",
      "        [ 2.6444e+00],\n",
      "        [ 2.7443e+00],\n",
      "        [ 2.8442e+00],\n",
      "        [ 2.9441e+00]])\n"
     ]
    }
   ],
   "source": [
    "# 预测结果\n",
    "with torch.no_grad():\n",
    "    res = model(x_tran_input)\n",
    "    print(res)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "4467787b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1e2f2ea5430>"
      ]
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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S06vuzXOqsfQoUPFk08+aXbMll9iV3P0+saOHSuef/55q69v375dKBQKsxvm8uXLhUqlEg0NDU6pu62c9Rlu2LBBhISEiMbGRtMxT3yGGo1GPPvss6bner1eJCYmioULF1os//DDD4uJEyeaHRs5cqT4n//5HyGEbd9Hd7P3GltramoSkZGR4sMPPzQdmz59upg8ebKzq+oQe6+vo3urt32Gnf38/vSnP4nIyEhRW1trOuZNn19LttwDXnnlFTFgwACzY1OnThUZGRmm5539N7OF3w/T2KukpARarRbjx483HYuKisLIkSORn58PAMjPz0d0dDRuv/12U5nx48dDoVDg4MGDbqurM+px5MgRHD9+HDNnzmzz2rPPPovu3btDo9Fg1apVHW4B7Wydub6///3v6N69OwYOHIj58+fj6tWrZu87aNAgxMfHm45lZGRAp9Ph1KlTzr+Qdjjrd6m6uhoqlQpBQebbTbnzM7x+/TqOHDli9t1RKBQYP3686bvTWn5+vll5wPBZGMvb8n10J0eusbWrV6+isbERMTExZsd3796NuLg49O/fH7Nnz0ZlZaVT624LR6+vtrYWvXr1QlJSEiZPnmz2PfKmz9AZn9/KlSvxyCOPoEuXLmbHveHzc0RH30Fn/JvZwic2ynMnrVYLAGYNlfG58TWtVou4uDiz14OCghATE2Mq4w7OqMfKlStx2223IT093ez4ggULcPfddyMiIgI7duzAM888g9raWsyZM8dp9e+Io9f36KOPolevXkhMTMTXX3+NefPm4fTp0/j0009N72vp8zW+5k7O+Ax//PFHvPXWW/jFL35hdtzdn+GPP/4IvV5v8d+2uLjY4jnWPouW3zXjMWtl3MmRa2xt3rx5SExMNLu5Z2Zm4qc//SmSk5Nx9uxZvPbaa7jvvvuQn58PpVLp1GtojyPX179/f6xatQqDBw9GdXU13n77baSnp+PUqVO46aabvOoz7OznV1BQgMLCQqxcudLsuLd8fo6w9h3U6XSor6/H5cuXO/07bwufDEZeffVVLF68uN0y33zzDVJSUtxUI+ey9fo6q76+HuvWrcMbb7zR5rWWx4YNG4a6ujosWbLEKQ2Zq6+vZaM8aNAgJCQk4J577sHZs2fRp08fh9/XHu76DHU6HSZOnIjU1FT85je/MXvNlZ8hOWbRokVYv349du/ebTbJ85FHHjH9/6BBgzB48GD06dMHu3fvxj333OOJqtosLS0NaWlppufp6em47bbb8N577+Gtt97yYM2cb+XKlRg0aBA0Go3ZcV/+/LyFTwYjL730EmbMmNFumVtuucWh91ar1QCA8vJyJCQkmI6Xl5dj6NChpjIVFRVm5zU1NaGqqsp0fmfYen2drcc///lPXL16FVlZWR2WHTlyJN566y00NDR0ev8Cd12f0ciRIwEAZ86cQZ8+faBWq9vMBC8vLwcAp3x+gHuusaamBpmZmYiMjMRnn32G4ODgdss78zO0pHv37lAqlaZ/S6Py8nKr16JWq9stb8v30Z0cuUajt99+G4sWLcIXX3yBwYMHt1v2lltuQffu3XHmzBm3NmaduT6j4OBgDBs2DGfOnAHgXZ9hZ66vrq4O69evx4IFCzr8OZ76/Bxh7TuoUqkQHh4OpVLZ6d8Jmzht9omXs3cC69tvv206Vl1dbXEC6+HDh01l8vLyPDaB1dF6jB07ts0KDGt++9vfim7dujlcV0c469957969AoA4ceKEEOLGBNaWM8Hfe+89oVKpxLVr15x3ATZw9Bqrq6vFqFGjxNixY0VdXZ1NP8sdn6FGoxHPPfec6blerxc9e/ZsdwLrAw88YHYsLS2tzQTW9r6P7mbvNQohxOLFi4VKpRL5+fk2/YyLFy8KSZLE5s2bO11fezlyfS01NTWJ/v37ixdeeEEI4X2foaPX98EHH4jQ0FDx448/dvgzPPn5tQQbJ7AOHDjQ7Ni0adPaTGDtzO+ETXV12jt5qfPnz4tjx46Zlq8eO3ZMHDt2zGwZa//+/cWnn35qer5o0SIRHR0tNm/eLL7++msxefJki0t7hw0bJg4ePCj27t0r+vXr57Glve3V4/vvvxf9+/cXBw8eNDvv22+/FZIkic8//7zNe27ZskW8//774uTJk+Lbb78V7777roiIiBBvvvmmy6+nNXuv78yZM2LBggXi8OHDoqSkRGzevFnccsstYsyYMaZzjEt7J0yYII4fPy5yc3NFjx49PLq0155rrK6uFiNHjhSDBg0SZ86cMVtO2NTUJITw3Ge4fv16ERoaKlavXi2KiorEL37xCxEdHW1aufT444+LV1991VR+3759IigoSLz99tvim2++EdnZ2RaX9nb0fXQne69x0aJFIiQkRPzzn/80+6yM96Camhrxq1/9SuTn54uSkhLxxRdfiOHDh4t+/fq5PTh25PpycnJEXl6eOHv2rDhy5Ih45JFHRFhYmDh16pSpjDd9hvZen9Gdd94ppk6d2ua4t31+NTU1pnYOgPjjH/8ojh07Js6fPy+EEOLVV18Vjz/+uKm8cWnvyy+/LL755huxbNkyi0t72/s3cwa/D0amT58uALR5/Pvf/zaVQXM+BiNZlsUbb7wh4uPjRWhoqLjnnnvE6dOnzd63srJSTJs2TXTt2lWoVCrxxBNPmAU47tJRPUpKStpcrxBCzJ8/XyQlJQm9Xt/mPT///HMxdOhQ0bVrV9GlSxcxZMgQsWLFCotlXc3e67tw4YIYM2aMiImJEaGhoaJv377i5ZdfNsszIoQQ586dE/fdd58IDw8X3bt3Fy+99JLZslh3svca//3vf1v8nQYgSkpKhBCe/Qz/8pe/iJtvvlmEhIQIjUYjDhw4YHpt7NixYvr06WblN2zYIG699VYREhIiBgwYIP71r3+ZvW7L99Hd7LnGXr16WfyssrOzhRBCXL16VUyYMEH06NFDBAcHi169eomnn37aqTd6e9lzfXPnzjWVjY+PF/fff784evSo2ft522do7+9ocXGxACB27NjR5r287fOzdn8wXtP06dPF2LFj25wzdOhQERISIm655Raz9tCovX8zZ5CEcPN6TSIiIqIWmGeEiIiIPIrBCBEREXkUgxEiIiLyKAYjRERE5FEMRoiIiMijGIwQERGRRzEYISIiIo9iMEJEREQexWCEiIiIPIrBCBEREXkUgxEiIiLyKAYjRERE5FH/P2nHTxgX4zTrAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 画图 预测值和真实值\n",
    "plt.scatter(x_train,res)\n",
    "plt.scatter(x_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "25c14271",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "68f9ccd7",
   "metadata": {},
   "source": [
    "# 如果不使用 relu函数，那么 无法模拟曲线，只会显示直线"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "d514e3cf",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1.7344\n",
      "0.8324\n",
      "0.8324\n",
      "0.8324\n",
      "0.8324\n",
      "0.8324\n",
      "0.8324\n",
      "0.8324\n",
      "tensor([[1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202],\n",
      "        [1.0202]])\n"
     ]
    }
   ],
   "source": [
    "# 构造模型\n",
    "class Model(nn.Module):\n",
    "    def __init__(self, *args, **kwargs):\n",
    "        super().__init__(*args, **kwargs)\n",
    "        self.hidden1 = nn.Linear(in_features=1,out_features=12)\n",
    "        self.fc = nn.Linear(in_features=12,out_features=1)\n",
    "    \n",
    "    def forward(self,input):\n",
    "        # (1000,1)的大小\n",
    "        x = self.hidden1(input)\n",
    "        # x = nn.ReLU()(x)\n",
    "        x = self.fc(x)\n",
    "        return x\n",
    "\n",
    "\n",
    "model = Model()\n",
    "\n",
    "\n",
    "opt = torch.optim.Adam(model.parameters(),lr=1e-3)\n",
    "cirtical = nn.MSELoss()\n",
    "epoch = 8000\n",
    "for r in range(epoch):\n",
    "    \n",
    "    opt.zero_grad()\n",
    "    predict = model(x_tran_input)\n",
    "    loss = cirtical(predict,y_train_target)\n",
    "    \n",
    "    loss.backward()\n",
    "    opt.step()\n",
    "    if r%1000==0:\n",
    "        print(\"{:.4f}\".format(loss.item()))\n",
    "\n",
    "\n",
    "# 预测结果\n",
    "with torch.no_grad():\n",
    "    res = model(x_tran_input)\n",
    "    print(res)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "dea5bc57",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x15f7b764970>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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JEkVFRXq0qWLLrroolCZ4uJiZWRkaMuWLUmrazzqsW3bNu3YsUMzZsxo8tysWbPUvXt3FRYWasmSJa1uAR1vbTm///3f/1X37t01ePBglZSU6Pjx42HvO2TIEOXm5oaOjRs3Tj6fT7t3747/ibQgXn9LNTU18nq9OuOM8O2mknkNv/jiC23bti3su5ORkaHi4uLQd6exioqKsPJS4FoEy0fzfUymWM6xsePHj+vkyZPq1q1b2PHy8nL16NFDAwYM0A033KBPPvkkrnWPRqznd+zYMfXp00cFBQWaOHFi2PfITtcwHtfvySef1He/+1195StfCTtuh+sXi9a+g/H4zKLhiI3ykqmqqkqSwjqq4M/B56qqqtSjR4+w58844wx169YtVCYZ4lGPJ598Uuedd55Gjx4ddvz+++/XN77xDXXq1El/+tOf9JOf/ETHjh3TTTfdFLf6tybW8/ve976nPn36KD8/X3//+991++23a+/evXrhhRdC7xvp+gafS6Z4XMOPP/5YDzzwgH70ox+FHU/2Nfz4449VX18f8bPds2dPxNc0dy0afteCx5ork0yxnGNjt99+u/Lz88Ma9/Hjx+tb3/qW+vbtq3feeUd33nmnrrzySlVUVCgzMzOu59CSWM5vwIABWrJkiYYOHaqamho99NBDGj16tHbv3q3evXvb6hq29fq98cYb2rVrl5588smw43a5frFo7jvo8/l04sQJffrpp23+m4+GI4ORO+64Qw8++GCLZd566y0NHDgwSTWKr2jPr61OnDihZ599VnfffXeT5xoeu+CCC1RbW6sFCxbEpSNL9Pk17JSHDBminj176vLLL9c777yjc889N+b3tSJZ19Dn82nChAkaNGiQ7r333rDnEnkNEZv58+dr2bJlKi8vD5vk+d3vfjf0/0OGDNHQoUN17rnnqry8XJdffnkqqhq1oqIiFRUVhX4ePXq0zjvvPD3xxBN64IEHUliz+HvyySc1ZMgQFRYWhh138vWzC0cGI7feequmT5/eYplzzjknpvfOy8uTJFVXV6tnz56h49XV1Ro+fHiozIcffhj2ulOnTunIkSOh17dFtOfX1no8//zzOn78uKZOndpq2ZEjR+qBBx5QXV1dm/cvSNb5BY0cOVKStG/fPp177rnKy8trMhO8urpakuJy/aTknOPRo0c1fvx4ZWdna8WKFWrXrl2L5eN5DSPp3r27MjMzQ59lUHV1dbPnkpeX12L5aL6PyRTLOQY99NBDmj9/vl5++WUNHTq0xbLnnHOOunfvrn379iW1M2vL+QW1a9dOF1xwgfbt2yfJXtewLedXW1urZcuW6f7772/196Tq+sWiue+g1+tVx44dlZmZ2ea/iajEbfaJzVmdwPrQQw+FjtXU1EScwLp169ZQmXXr1qVsAmus9RgzZkyTFRjN+dnPfma6du0ac11jEa/P+fXXXzeSzN/+9jdjzJcTWBvOBH/iiSeM1+s1n3/+efxOIAqxnmNNTY0ZNWqUGTNmjKmtrY3qdyXjGhYWFprZs2eHfq6vrze9evVqcQLr1VdfHXasqKioyQTWlr6PyWb1HI0x5sEHHzRer9dUVFRE9TsOHTpkPB6PefHFF9tcX6tiOb+GTp06ZQYMGGBuueUWY4z9rmGs57d06VKTlZVlPv7441Z/RyqvX0OKcgLr4MGDw45NmTKlyQTWtvxNRFXXuL2TTR04cMBs3749tHx1+/btZvv27WHLWAcMGGBeeOGF0M/z5883Xbp0MS+++KL5+9//biZOnBhxae8FF1xgtmzZYl5//XXTv3//lC3tbake7733nhkwYIDZsmVL2Ovefvtt4/F4zEsvvdTkPVetWmV+85vfmJ07d5q3337b/OpXvzKdOnUy99xzT8LPpzGr57dv3z5z//33m61bt5r9+/ebF1980Zxzzjnm0ksvDb0muLT3iiuuMDt27DBr1641Z555ZkqX9lo5x5qaGjNy5EgzZMgQs2/fvrDlhKdOnTLGpO4aLlu2zGRlZZmysjJTWVlpfvSjH5kuXbqEVi794Ac/MHfccUeo/F/+8hdzxhlnmIceesi89dZbZt68eRGX9rb2fUwmq+c4f/580759e/P888+HXatgG3T06FHz7//+76aiosLs37/fvPzyy+bCCy80/fv3T3pwHMv53XfffWbdunXmnXfeMdu2bTPf/e53TYcOHczu3btDZex0Da2eX9DXv/51M3ny5CbH7Xb9jh49GurnJJlHHnnEbN++3Rw4cMAYY8wdd9xhfvCDH4TKB5f23nbbbeatt94yixYtiri0t6XPLB5cH4xMmzbNSGry+POf/xwqo9P5GIL8fr+5++67TW5ursnKyjKXX3652bt3b9j7fvLJJ2bKlCmmc+fOxuv1muuuuy4swEmW1uqxf//+JudrjDElJSWmoKDA1NfXN3nPl156yQwfPtx07tzZfOUrXzHDhg0zixcvjlg20aye38GDB82ll15qunXrZrKysky/fv3MbbfdFpZnxBhj3n33XXPllVeajh07mu7du5tbb701bFlsMlk9xz//+c8R/6Ylmf379xtjUnsNH3vsMXPWWWeZ9u3bm8LCQrN58+bQc2PGjDHTpk0LK//cc8+Zf/qnfzLt27c3559/vvnjH/8Y9nw038dks3KOffr0iXit5s2bZ4wx5vjx4+aKK64wZ555pmnXrp3p06ePmTlzZlwbequsnN+cOXNCZXNzc81VV11l3nzzzbD3s9s1tPo3umfPHiPJ/OlPf2ryXna7fs21D8FzmjZtmhkzZkyT1wwfPty0b9/enHPOOWH9YVBLn1k8eIxJ8npNAACABsgzAgAAUopgBAAApBTBCAAASCmCEQAAkFIEIwAAIKUIRgAAQEoRjAAAgJQiGAEAAClFMAIAAFKKYAQAAKQUwQgAAEgpghEAAJBS/x+XwQpFFjFoNQAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 画图 预测值和真实值\n",
    "plt.scatter(x_train,res)\n",
    "plt.scatter(x_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "88d3e571",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "9bdd616e",
   "metadata": {},
   "source": [
    "# sigmoid函数  也可以模拟曲线"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "9972093f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x15f7de39ac0>]"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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9O3b95x6n3nmmSbXqaio0MyZM9WtWzd16dJF//Iv/6LCwsJ2qrj59u3bpxkzZqhfv37q1KmT+vfvrzlz5sjtdje5XqAfw3nz5qlv376KjIxUenq61q5d22T79957T0OGDFFkZKSGDx+uRYsWtVOl/snOztZll12m6OhoJSYm6rbbbtOOHTuaXOfNN98851hFRka2U8X++8UvfnFOvUOGDGlynWA5flLDnyc2m00zZ85ssH2gH78VK1Zo0qRJSklJkc1m04cffljvdWOMZs+erR49eqhTp07KzMzUrl27zrtdf9/D/gr5MOJ2u3X77bfr/vvvb/B1j8ejm2++WW63W6tWrdKf/vQnvfnmm5o9e3aT273zzju1ZcsWLV26VH//+9+1YsUK3XvvvW2xC802btw4HT58uN7j7rvvVr9+/TRmzJgm173nnnvqrffcc8+1U9Ut89RTT9Wr94EHHmiy/cMPP6y//e1veu+99/T5558rPz9f//zP/9xO1Tbf9u3b5fV69fvf/15btmzRSy+9pPnz5+vxxx8/77qBegwXLFigrKwszZkzR+vXr1daWpomTJigI0eONNh+1apVmjJlimbMmKENGzbotttu02233abNmze3c+Xn9/nnn2vmzJn66quvtHTpUlVVVemGG25QWVlZk+vFxMTUO1b79+9vp4pb5pJLLqlX78qVKxttG0zHT5K+/vrrevu2dOlSSdLtt9/e6DqBfPzKysqUlpamefPmNfj6c889p9/+9reaP3++1qxZo86dO2vChAmqqKhodJv+vodbxHQQb7zxhomNjT1n+aJFi4zdbjcFBQW+Zb/73e9MTEyMqaysbHBbW7duNZLM119/7Vv28ccfG5vNZg4dOtTqtbeU2+023bt3N0899VST7a655hrz4IMPtk9RraBPnz7mpZdeanb74uJiEx4ebt577z3fsm3bthlJZvXq1W1QYet67rnnTL9+/ZpsE8jHcOzYsWbmzJm+5x6Px6SkpJjs7OwG23//+983N998c71l6enp5kc/+lGb1tkajhw5YiSZzz//vNE2jX0WBao5c+aYtLS0ZrcP5uNnjDEPPvig6d+/v/F6vQ2+HkzHT5L54IMPfM+9Xq9JTk42v/71r33LiouLjdPpNP/3f//X6Hb8fQ+3RMifGTmf1atXa/jw4UpKSvItmzBhglwul7Zs2dLoOnFxcfXONmRmZsput2vNmjVtXnNzffTRRzp27JimT59+3rZ//vOflZCQoGHDhmnWrFkqLy9vhwpb7plnnlG3bt00atQo/frXv26yWy0nJ0dVVVXKzMz0LRsyZIh69+6t1atXt0e5F6SkpETx8fHnbReIx9DtdisnJ6fe795utyszM7PR3/3q1avrtZdq3pPBcqwknfd4nTx5Un369FFqaqpuvfXWRj9rAsWuXbuUkpKiiy66SHfeeafy8vIabRvMx8/tduutt97SD3/4wyZvyhpsx6/O3r17VVBQUO/4xMbGKj09vdHj05L3cEsExY3y2lJBQUG9ICLJ97ygoKDRdRITE+stCwsLU3x8fKPrWOG1117ThAkTznuTwTvuuEN9+vRRSkqKvv32Wz366KPasWOH/vKXv7RTpf75j//4D1166aWKj4/XqlWrNGvWLB0+fFgvvvhig+0LCgoUERFxzpihpKSkgDpeDcnNzdXLL7+s559/vsl2gXoMi4qK5PF4GnyPbd++vcF1GntPBvqx8nq9euihh3TFFVdo2LBhjbYbPHiwXn/9dY0YMUIlJSV6/vnnNW7cOG3ZsqVNbwjaUunp6XrzzTc1ePBgHT58WE8++aSuuuoqbd68WdHR0ee0D9bjJ0kffvihiouL9W//9m+Ntgm243emumPgz/FpyXu4JYIyjDz22GN69tlnm2yzbdu28w6yChYt2d+DBw9qyZIlevfdd8+7/TPHugwfPlw9evTQ9ddfr927d6t///4tL9wP/uxjVlaWb9mIESMUERGhH/3oR8rOzg7Y6ZpbcgwPHTqkG2+8UbfffrvuueeeJtcNhGPY0c2cOVObN29ucjyFJGVkZCgjI8P3fNy4cRo6dKh+//vf65e//GVbl+m3iRMn+r4fMWKE0tPT1adPH7377ruaMWOGhZW1vtdee00TJ05USkpKo22C7fgFi6AMI4888kiTyVWSLrroomZtKzk5+ZxRwXVXWSQnJze6ztkDd6qrq3X8+PFG17kQLdnfN954Q926ddMtt9zi989LT0+XVPOv8vb6Q3YhxzQ9PV3V1dXat2+fBg8efM7rycnJcrvdKi4urnd2pLCwsE2OV0P83b/8/HyNHz9e48aN0x/+8Ae/f54Vx7AhCQkJcjgc51y51NTvPjk52a/2geDHP/6xbyC7v/86Dg8P16hRo5Sbm9tG1bWuuLg4DRo0qNF6g/H4SdL+/fv1ySef+H02MZiOX90xKCwsVI8ePXzLCwsLNXLkyAbXacl7uEVabfRJgDvfANbCwkLfst///vcmJibGVFRUNLitugGs69at8y1bsmRJwAxg9Xq9pl+/fuaRRx5p0forV640ksw333zTypW1jbfeesvY7XZz/PjxBl+vG8D6/vvv+5Zt3749YAewHjx40AwcOND84Ac/MNXV1S3aRiAdw7Fjx5of//jHvucej8f07NmzyQGs3/3ud+sty8jICMgBkF6v18ycOdOkpKSYnTt3tmgb1dXVZvDgwebhhx9u5eraRmlpqenatav5zW9+0+DrwXT8zjRnzhyTnJxsqqqq/FovkI+fGhnA+vzzz/uWlZSUNGsAqz/v4RbV2mpbClD79+83GzZsME8++aTp0qWL2bBhg9mwYYMpLS01xtT8jzRs2DBzww03mI0bN5rFixeb7t27m1mzZvm2sWbNGjN48GBz8OBB37Ibb7zRjBo1yqxZs8asXLnSDBw40EyZMqXd968hn3zyiZFktm3bds5rBw8eNIMHDzZr1qwxxhiTm5trnnrqKbNu3Tqzd+9e89e//tVcdNFF5uqrr27vsptl1apV5qWXXjIbN240u3fvNm+99Zbp3r27mTp1qq/N2ftojDH33Xef6d27t/n000/NunXrTEZGhsnIyLBiF5p08OBBM2DAAHP99debgwcPmsOHD/seZ7YJpmP4zjvvGKfTad58802zdetWc++995q4uDjfFWx33XWXeeyxx3ztv/zySxMWFmaef/55s23bNjNnzhwTHh5uNm3aZNUuNOr+++83sbGxZvny5fWOVXl5ua/N2fv35JNPmiVLlpjdu3ebnJwc84Mf/MBERkaaLVu2WLEL5/XII4+Y5cuXm71795ovv/zSZGZmmoSEBHPkyBFjTHAfvzoej8f07t3bPProo+e8FmzHr7S01Pd3TpJ58cUXzYYNG8z+/fuNMcY888wzJi4uzvz1r3813377rbn11ltNv379zKlTp3zbuO6668zLL7/se36+93BrCPkwMm3aNCPpnMdnn33ma7Nv3z4zceJE06lTJ5OQkGAeeeSReun4s88+M5LM3r17fcuOHTtmpkyZYrp06WJiYmLM9OnTfQHHalOmTDHjxo1r8LW9e/fW2/+8vDxz9dVXm/j4eON0Os2AAQPMT37yE1NSUtKOFTdfTk6OSU9PN7GxsSYyMtIMHTrUPP300/XOYp29j8YYc+rUKfPv//7vpmvXriYqKsr80z/9U70/8IHijTfeaPD/1zNPYgbjMXz55ZdN7969TUREhBk7dqz56quvfK9dc801Ztq0afXav/vuu2bQoEEmIiLCXHLJJWbhwoXtXHHzNHas3njjDV+bs/fvoYce8v0ukpKSzE033WTWr1/f/sU30+TJk02PHj1MRESE6dmzp5k8ebLJzc31vR7Mx6/OkiVLjCSzY8eOc14LtuNX9/fq7EfdPni9XvPEE0+YpKQk43Q6zfXXX3/Ofvfp08fMmTOn3rKm3sOtwWaMMa3X6QMAAOCfDj/PCAAAsBZhBAAAWIowAgAALEUYAQAAliKMAAAASxFGAACApQgjAADAUoQRAABgKcIIAACwFGEEAABYijACAAAsRRgBAACW+v/hl5VMHprXugAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# sigmoid函数\n",
    "'''\n",
    "    把结果 转换到 0-1之间\n",
    "'''\n",
    "x1 = torch.linspace(-10,10,10000)\n",
    "x2 = nn.Sigmoid()(x1)\n",
    "\n",
    "plt.plot(x1,x2)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "fbe32c0c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x15f7f016b80>]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "x1 = torch.linspace(0,2,1000)\n",
    "x2 = torch.log(x1)\n",
    "plt.plot(x1,x2)\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "695b6d31",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2.718281828459045"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.e"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bb3125d0",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "012c578b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1.1547\n",
      "0.7061\n",
      "0.0791\n",
      "0.0090\n",
      "0.0028\n",
      "0.0009\n",
      "0.0005\n",
      "0.0004\n",
      "tensor([[2.9475],\n",
      "        [2.8472],\n",
      "        [2.7459],\n",
      "        [2.6437],\n",
      "        [2.5411],\n",
      "        [2.4383],\n",
      "        [2.3356],\n",
      "        [2.2334],\n",
      "        [2.1319],\n",
      "        [2.0314],\n",
      "        [1.9322],\n",
      "        [1.8345],\n",
      "        [1.7385],\n",
      "        [1.6446],\n",
      "        [1.5527],\n",
      "        [1.4633],\n",
      "        [1.3762],\n",
      "        [1.2918],\n",
      "        [1.2100],\n",
      "        [1.1310],\n",
      "        [1.0549],\n",
      "        [0.9816],\n",
      "        [0.9112],\n",
      "        [0.8438],\n",
      "        [0.7793],\n",
      "        [0.7177],\n",
      "        [0.6591],\n",
      "        [0.6033],\n",
      "        [0.5503],\n",
      "        [0.5002],\n",
      "        [0.4528],\n",
      "        [0.4081],\n",
      "        [0.3661],\n",
      "        [0.3267],\n",
      "        [0.2899],\n",
      "        [0.2555],\n",
      "        [0.2237],\n",
      "        [0.1943],\n",
      "        [0.1672],\n",
      "        [0.1425],\n",
      "        [0.1201],\n",
      "        [0.0999],\n",
      "        [0.0820],\n",
      "        [0.0663],\n",
      "        [0.0527],\n",
      "        [0.0414],\n",
      "        [0.0321],\n",
      "        [0.0251],\n",
      "        [0.0201],\n",
      "        [0.0173],\n",
      "        [0.0167],\n",
      "        [0.0182],\n",
      "        [0.0219],\n",
      "        [0.0278],\n",
      "        [0.0359],\n",
      "        [0.0462],\n",
      "        [0.0588],\n",
      "        [0.0737],\n",
      "        [0.0910],\n",
      "        [0.1106],\n",
      "        [0.1326],\n",
      "        [0.1571],\n",
      "        [0.1841],\n",
      "        [0.2136],\n",
      "        [0.2457],\n",
      "        [0.2805],\n",
      "        [0.3179],\n",
      "        [0.3581],\n",
      "        [0.4010],\n",
      "        [0.4466],\n",
      "        [0.4951],\n",
      "        [0.5465],\n",
      "        [0.6007],\n",
      "        [0.6578],\n",
      "        [0.7178],\n",
      "        [0.7807],\n",
      "        [0.8464],\n",
      "        [0.9150],\n",
      "        [0.9865],\n",
      "        [1.0606],\n",
      "        [1.1376],\n",
      "        [1.2171],\n",
      "        [1.2992],\n",
      "        [1.3838],\n",
      "        [1.4707],\n",
      "        [1.5599],\n",
      "        [1.6511],\n",
      "        [1.7443],\n",
      "        [1.8393],\n",
      "        [1.9359],\n",
      "        [2.0339],\n",
      "        [2.1330],\n",
      "        [2.2332],\n",
      "        [2.3342],\n",
      "        [2.4358],\n",
      "        [2.5377],\n",
      "        [2.6398],\n",
      "        [2.7417],\n",
      "        [2.8434],\n",
      "        [2.9445]])\n"
     ]
    }
   ],
   "source": [
    "# 构造模型\n",
    "class Model(nn.Module):\n",
    "    def __init__(self, *args, **kwargs):\n",
    "        super().__init__(*args, **kwargs)\n",
    "        self.hidden1 = nn.Linear(in_features=1,out_features=12)\n",
    "        self.fc = nn.Linear(in_features=12,out_features=1)\n",
    "    \n",
    "    def forward(self,input):\n",
    "        # (1000,1)的大小\n",
    "        x = self.hidden1(input)\n",
    "        x = nn.Sigmoid()(x)\n",
    "        x = self.fc(x)\n",
    "        return x\n",
    "\n",
    "\n",
    "model = Model()\n",
    "\n",
    "\n",
    "opt = torch.optim.Adam(model.parameters(),lr=1e-3)\n",
    "cirtical = nn.MSELoss()\n",
    "epoch = 8000\n",
    "for r in range(epoch):\n",
    "    \n",
    "    opt.zero_grad()\n",
    "    predict = model(x_tran_input)\n",
    "    loss = cirtical(predict,y_train_target)\n",
    "    \n",
    "    loss.backward()\n",
    "    opt.step()\n",
    "    if r%1000==0:\n",
    "        print(\"{:.4f}\".format(loss.item()))\n",
    "\n",
    "\n",
    "# 预测结果\n",
    "with torch.no_grad():\n",
    "    res = model(x_tran_input)\n",
    "    print(res)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "07b8debf",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 画图 预测值和真实值\n",
    "plt.scatter(x_train,res)\n",
    "plt.scatter(x_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "b7654862",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "torch_py38",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.7rc1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
